草庐IT

c - 在 C 中执行 shellcode (visual studio 2017

全部标签

c# - 是否有使用查询语法在 LINQ 查询中执行 ToList 的巧妙方法?

考虑下面的代码:StockcheckJobs=(fromjobin(fromstockcheckIteminMDC.StockcheckItemswheredistinctJobs.Contains(stockcheckItem.JobId)groupstockcheckItembynew{stockcheckItem.JobId,stockcheckItem.JobData.EngineerId}intojobsselectjobs).ToList()letdate=MJM.GetOrCreateJobData(job.Key.JobId).CompletedJob.Valueord

c# - 检查给定的可执行文件是否经过数字签名且有效?

在我的C#/.NET应用程序中,我必须检查给定的可执行文件是否经过数字签名(最好没有异常测试。)然后我需要检查其证书是否有效(基于已安装的根证书)以及文件内容是否对签名有效.BCL中的类太多了,我不知道从哪里开始以及使用什么,到目前为止我发现的任何东西都不能消除我的困惑...我想做这样的事情,没有如果可能P/Invoke:boolIsSignedFile(stringpath);CertGetCertificateFromSignedFile(stringpath);boolIsValidCertificate(Certcert)SigGetSignatureFromSignedFil

c# - 如何使用 PFX(Bouncy CaSTLe 或其他)以编程方式对可执行文件进行代码签名

我正在尝试确定使用BouncyCaSTLe、托管代码或来自C#的非托管代码对可执行文件进行代码签名的最佳方法。由于CAPICOM现在已被弃用,我想如果需要非托管地完成,mssign32.dll中的SignerSign方法之一是最好的方法。这个答案(https://stackoverflow.com/a/3952235/722078)看起来很接近,但它会生成一个.p7m文件,虽然看起来大小合适,但无法正确运行(显然在运行前重命名为.exe)。此处提问者(API/Librarytoreplacesigntool.exe)给出的解决方案似乎很有前途且管理得当,但就像TomCanham在下面的

c# - 为什么转换为 IEnumerable 的数组会忽略延迟执行?

我今天遇到了这个问题,但我不明白发生了什么:enumFoo{Zero,One,Two}voidMain(){IEnumerablea=newFoo[]{Foo.Zero,Foo.One,Foo.Two};IEnumerableb=a.ToList();PrintGeneric(a.Cast());PrintGeneric(b.Cast());Print(a.Cast());Print(b.Cast());}publicstaticvoidPrintGeneric(IEnumerablevalues){foreach(Tvalueinvalues){Console.WriteLine(v

c# - LINQ 如何在 using 语句中延迟执行

假设我有以下内容:privateIEnumerableMyFunc(parametera){using(MyDataContextdc=newMyDataContext){returndc.tablename.Select(row=>row.parameter==a);}}privatevoidUsingFunc(){varresult=MyFunc(newa());foreach(varrowinresult){//Dosomething}}根据文档,linq执行将推迟到我实际枚举结果时,该结果出现在foreach的行中。但是,using语句应强制在调用MyFunct()结束时可靠地

c# - 无法在 VS 2017 .NET Core 上为 Entity Framework 启用迁移

我刚刚安装了VS2017并创建了一个新的核心项目。在其中,我添加了:Microsoft.EntityFrameworkCore(1.1.0)Microsoft.NETCore.App(1.1.0)我还创建了一个名为Models的文件夹,其中包含一个类。然后,我转到程序包管理器控制台并执行enable-migrations,这样VS就会创建我需要的文件。但是,我收到的不是所需文件,而是以下错误。Theterm'enable-migration'isnotrecognizedasthenameofacmdlet,function,scriptfile,oroperableprogram.C

c# - 如何使用 Lucene.Net 执行 'contains' 搜索而不是 'starts with'

我们使用Lucene.NET在客户网站上实现全文搜索。搜索本身已经可以工作,但我们现在想要进行修改。目前,所有术语都附加了一个*,这会导致Lucene执行我将其归类为StartsWith搜索的操作。在未来,我们希望有一个搜索执行类似于Contains而不是StartsWith的搜索。我们使用Lucene.Net2.9.2.2标准分析器默认查询解析器示例:(Title:Orch*)匹配:Orchestra但是:(Title:rch*)不匹配:Orchestra我们希望第一个和第二个都匹配Orchestra。基本上我想要与这个问题中的问题完全相反,我不确定为什么Lucene对这个人执行Co

c# - 如何使用 C# 并行执行多个 "Pings"

我正在尝试计算一组服务器的平均往返时间。为了加快速度,我想并行执行ping。我编写了一个名为AverageRoundtripTime()的函数,它似乎可以工作,但是,由于我不太了解多线程,所以我想知道我所做的是否正确。请看一下我的代码,让我知道是否可以,或者是否有更好的方法来实现我想要的:publicvoidMain(){//Collectionofhosts.Listhosts=newList();//Add100hoststothecollection.for(Int32i=0;ihosts){//Collectionofthreads.Listthreads=newList();

c# - 永远不会执行加载项事件

我使用“VisualStudio插件”向导创建了一个新的插件项目,现在,我正在尝试添加一些事件处理程序:publicvoidOnConnection(objectapplication,ext_ConnectModeconnectMode,objectaddInInst,refArraycustom){_applicationObject=(DTE2)application;_addInInstance=(AddIn)addInInst;_applicationObject.Events.BuildEvents.OnBuildBegin+=BuildEvents_OnBuildBegi

c# - 如何为 VisualStudio2015 设置 .NET 版本(代码)

我们团队中的一些人正在使用VisualStudio2015,而其他人仍在使用2013(均使用ReSharper9.1)。项目属性中的目标框架设置为.NETFramework4.5.1。我的问题:我仍然可以使用类似的代码publicintX()=>x;这是.NET4.6的一项功能。当我构建项目时,它也会运行(我猜是因为它或多或少是语法糖,所以编译器生成不需要.NET4.6的代码)。然而,当我的同事检查我在VisualStudio2013中所做的更改时,他们并不是很开心;-)是否有可能在VisualStudio2015中因使用.NET4.6功能而收到警告/编译错误?